Program guide image objects for media content access systems and methods

ABSTRACT

An exemplary system includes a media content processing subsystem configured to provide a program guide including a matrix of cells associated with a plurality of media content instances, and a selector object within the program guide. The selector object is configured to select one of the cells such that the cells in the matrix include a selected cell and at least one unselected cell. The subsystem is further configured to provide at least one image object within the at least one unselected cell. The image object represents the media content instance associated with the unselected cell. In certain embodiments, the image object includes a video content stream. The subsystem is further configured to provide a graphical user interface to a display for presentation to a user, the graphical user interface including at least a portion of the program guide and the image object.

BACKGROUND INFORMATION

The set-top box (“STB”) has become an important computing device foraccessing media content services and the media content within thoseservices. An STB is usually configured to provide users with access to alarge number and variety of media content choices offered by a provider.For example, a user may choose to experience a variety of broadcasttelevision programs, pay-per-view services, video-on-demand programming,Internet services, and audio programming via an STB.

The large number of media content choices offered by providers can makeit difficult for a user of an STB to find and select desired mediacontent. On-screen program guides have alleviated this problem to somedegree. As the services and media content choices provided to users(e.g., more media channels) have expanded, developers of program guideshave attempted to keep pace by expanding the features and capabilitiesof the program guides.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate various embodiments and are a partof the specification. The illustrated embodiments are merely examplesand do not limit the scope of the disclosure. Throughout the drawings,identical reference numbers designate identical or similar elements.

FIG. 1 illustrates an example of a media content access system.

FIG. 2 illustrates an exemplary media content provider network.

FIG. 3 illustrates an exemplary media content processing subsystem.

FIG. 4 illustrates an exemplary remote control user input device.

FIG. 5 illustrates an exemplary program guide having a matrix of cellsand image objects included therein.

FIG. 6 illustrates another configuration of image objects within theprogram guide of FIG. 5.

FIG. 7 illustrates yet another configuration of image objects within theprogram guide of FIG. 5.

FIG. 8 illustrates yet another configuration of image objects within theprogram guide of FIG. 5.

FIG. 9 illustrates an exemplary program guide view presented in agraphical user interface displayed in a viewing area of a display.

FIG. 10 illustrates another program guide view in the graphical userinterface of FIG. 9.

FIG. 11 illustrates an exemplary method of providing a program guidehaving image objects included therein.

FIG. 12 illustrates an exemplary method of selectively placing imagecontent at a cell level.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Exemplary apparatuses, systems, and methods for providing one or moreprogram guide image objects are disclosed herein. Image objects mayinclude any visual images, graphics, and/or other image content(collectively referred to as “image content”) representing media contentinstances associated with cells of a program guide. Examples of imageobjects will be described further below.

In certain embodiments, a media content processing subsystem (e.g., aset-top box) may be configured to provide a program guide including amatrix of cells associated with a plurality of media content instances.The media content processing subsystem may be further configured toprovide a selector object within the program guide. The selector objectmay be used to select one of the cells in the matrix, thereby leaving atleast one unselected cell within the matrix. The media contentprocessing subsystem may be further configured to provide at least oneimage object within at least one of the unselected cells. Each imageobject may represent a media content instance associated with theobject's corresponding unselected cell. In certain embodiments, themedia content processing subsystem may be configured to provide agraphical user interface to a display for presentation to a user. Thegraphical user interface may include at least a portion of the programguide and the image object(s) placed within the program guide.

In certain embodiments, image objects may include video image contentrepresenting the media content instances associated therewith. The videoimage content may include one or more “live” or “nearly live” videoimage streams, which will be described in more detail further below. Incertain embodiments, the image objects and content within the imageobjects may be selectively placed in the program guide based on aplacement heuristic, examples of which will be described below.

The image objects may enable a user to view image content (includingvideo image content) representative of one or more media contentinstances in a program guide view. The image content may be displayednot solely for an active cell in the program guide, i.e., a cellselected by the selector object, but for one or more inactive cells inthe program guide, i.e., cells not selected by the selector object.

Components and functions of exemplary media content access apparatuses,systems, and methods will now be described in more detail.

FIG. 1 illustrates an exemplary media content access system 100 (orsimply “system 100”). As shown in FIG. 1, system 100 may include a mediacontent processing subsystem 110, which may be configured to communicatewith and receive a signal or data stream containing data representativeof media content and/or program guide data from a media content provider111. Media content processing subsystem 110 and media content provider111 may communicate using any known communication technologies, devices,networks, media, and protocols supportive of remote data communications,including, but not limited to, cable networks, subscriber televisionnetworks, satellite networks, the Internet, intranets, local areanetworks, wireless networks (e.g., Wi-Fi and/or mobile telephonenetworks), optical fiber networks, data transmission media,communications devices, Transmission Control Protocol (“TCP”), InternetProtocol (“IP”), File Transfer Protocol (“FTP”), Telnet, HypertextTransfer Protocol (“HTTP”), Real Time Protocol (“RTP”), User DatagramProtocol (“UDP”), Ethernet, and any other suitable communicationsnetworks and technologies.

Media content processing subsystem 110 may be configured to process amedia content stream provided by media content provider 111, includingcausing a media content instance, or one or more components (e.g., videoand/or audio components) of a media content instance, to be presentedfor experiencing (e.g., viewing) by a user. Presentation of the mediacontent instance may include, but is not limited to, displaying, playingback, or otherwise processing the media content instance, or one or morecomponents of the media content instance, such that the media contentinstance may be experienced by the user. For example, media contentprocessing subsystem 110 may provide one or more signals to a display112 (e.g., a television, computer monitor, etc.) so that the display 112may present (e.g., display) media content for experiencing by the user.

Media content processing subsystem 110 may be configured to processprogram guide data provided by media content provider 111, includinggenerating and providing a program guide graphical user interface(“GUI”) for presentation to the user. For example, media contentprocessing subsystem 110 may provide one or more signals to the display112 so that the display 112 may present the program guide GUI to theuser. The program guide GUI may include a matrix of cells associatedwith media content instances and one or more image objects associatedwith (e.g., located within) one or more of the cells, as describedfurther below.

Media content processing subsystem 110 may be at least partiallycontrolled by a user input device 113 (e.g., a remote control device).In certain examples, user input device 113 may include input mechanismsby which a user can utilize features and/or services provided by mediacontent processing subsystem 110. For example, a user may utilize userinput device 113 to navigate a program guide (e.g., move a selectorobject within the program guide) and view and/or select image objectsincluded in the program guide.

While an exemplary media content access system 100 is shown in FIG. 1,the exemplary components illustrated in FIG. 1 are not intended to belimiting. Additional or alternative components and/or implementationsmay be used. Components of system 100 will now be described inadditional detail.

Media content provider 111 may be configured to provide various types ofmedia content and/or program guide data to media content processingsubsystem 110 using any suitable communication technologies, includingany of those disclosed herein. The media content may include one or moremedia content instances, or one or more segments of the media contentinstance(s). The term “media content instance” as used herein refersgenerally to any television program, on demand program, pay-per-viewprogram, broadcast media program, IPTV content, commercial,advertisement, video, movie, song, video game, image, photograph, sound,or any segment, component, or combination of these or other forms ofmedia content that may be viewed or otherwise experienced by a user.

The program guide data may include any information descriptive ofcontent channels, programming time slots, media content instances,metadata for the media content instances, and relationships between thecontent channels, time slots, and media content instances. The term“content channel” will be used herein to refer generally to any carrierof media content, including, but not limited to, media (e.g.,television) channels, streams, addresses, frequencies or other carriersof media content. The term “programming time slot” will be used hereinto refer generally to any period of time associated with a scheduledtransmission (e.g., broadcast) of media content. Typically, the programguide data is descriptive of a programming schedule, including mediacontent instances and the time slots and content channels associatedwith scheduled transmission of the media content instances. Examples ofprogram guides and program guide views presenting program guide data andimage objects will be described in more detail below.

An exemplary media content provider 111 may include a media contentprovider server 221, as shown in FIG. 2. Media content provider server221 may be configured to communicate with media content processingsubsystem 110 via one or more types of networks 220 (and communicationslinks thereto). Network 220 shown in FIG. 2 may include, but is notlimited to, the Internet, an intranet or other private packet-switchednetwork, a wireless network (e.g., a wireless phone network or a Wi-Finetwork), a cable television network (e.g., a hybrid fiber-coaxnetwork), a wireless broadcast network (e.g., a satellite mediabroadcasting network or terrestrial broadcasting network), a subscribertelevision network, a telephone network, a provider-specific network(e.g., a Verizon® FIOS® network and/or a TiVo network), an optical fibernetwork, any other suitable network, and any combination of thesenetworks. In some alternative examples, media content processingsubsystem 110 may be connected directly to media content provider server221.

FIG. 3 illustrates exemplary components of media content processingsubsystem 110 (or simply “processing subsystem 110”). Processingsubsystem 110 may include any hardware, software, and firmware, orcombination or sub-combination thereof, configured to process mediacontent and/or program guide data for presentation to a user. The mediacontent and/or program guide data may be received from media contentprovider 111 and provided to display 112 for presentation to the user.As used herein and in the appended claims, unless otherwise specificallydenoted, the terms “media content processing subsystem” and “processingsubsystem” refer expansively to all possible receivers configured toreceive and process digital and/or analog media content, as well asprogram guide data. Processing subsystem 110 may include, but is notlimited to, a set-top box (“STB”), home communication terminal (“HCT”),digital home communication terminal (“DHCT”), stand-alone personal videorecorder (“PVR”), DVD player, handheld entertainment device, gamingdevice, video-enabled phone (e.g., a mobile phone), and personalcomputer.

In certain embodiments, processing subsystem 110 may include anycomputer hardware and/or instructions (e.g., software), or combinationsof software and hardware, configured to perform the processes describedherein. In particular, it should be understood that processing subsystem110 may be implemented on one physical computing device or may beimplemented on more than one physical computing device. Accordingly,processing subsystem 110 may include any one of a number of computingdevices, and may employ any of a number of computer operating systems,including, but by no means limited to, known versions and/or varietiesof Microsoft Windows, UNIX, Macintosh, and Linux operating systems.

Accordingly, the processes described herein may be implemented at leastin part as instructions executable by one or more computing devices. Ingeneral, a processor (e.g., a microprocessor) receives instructions,e.g., from a memory, a computer-readable medium, etc., and executesthose instructions, thereby performing one or more processes, includingone or more of the processes described herein. Such instructions may bestored and transmitted using any of a variety of known computer-readablemedia.

A computer-readable medium (also referred to as a processor-readablemedium) includes any medium that participates in providing data (e.g.,instructions) that may be read by a computer (e.g., by a processor of acomputer). Such a medium may take many forms, including, but not limitedto, non-volatile media, volatile media, and transmission media.Non-volatile media may include, for example, optical or magnetic disksand other persistent memory. Volatile media may include, for example,dynamic random access memory (“DRAM”), which typically constitutes amain memory. Transmission media may include, for example, coaxialcables, copper wire and fiber optics, including the wires that comprisea system bus coupled to a processor of a computer. Transmission mediamay include or convey acoustic waves, light waves, and electromagneticemissions, such as those generated during radio frequency (“RF”) andinfrared (“IR”) data communications. Common forms of computer-readablemedia include, for example, a floppy disk, flexible disk, hard disk,magnetic tape, any other magnetic medium, a CD-ROM, DVD, any otheroptical medium, punch cards, paper tape, any other physical medium withpatterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any othermemory chip or cartridge, or any other medium from which a computer canread.

While an exemplary processing subsystem 110 is shown in FIG. 3, theexemplary components illustrated in FIG. 3 are not intended to belimiting. Additional or alternative components and/or implementationsmay be used in other embodiments. Components of the processing subsystem110 will now be described in additional detail.

As shown in FIG. 3, processing subsystem 110 may include a communicationinterface 331 configured to receive content (e.g., media content) and/ordata (e.g., program guide data) in any acceptable format (e.g., streameddata) from media content provider 111 or from any other suitable contentsource. Communication interface 331 may include any device, logic,and/or other technologies suitable for receiving signals and/or datarepresentative of media content and/or other types of content or data.Communication interface 331 may be configured to interface with anysuitable communication media, protocols, and formats, including any ofthose mentioned above.

Processing subsystem 110 may also include a receiver 332 configured toreceive user input signals (e.g., program guide navigation commands)from user input device 113. User input device 113 may include, forexample, a remote control device or any other suitable input device andmay be configured to communicate with receiver 332 via a wireless link(e.g., an infrared (“IR”) or radio frequency (“RF”) link), electricalconnection, or any other suitable communication link.

An exemplary remote control user input device 113 is illustrated in FIG.4. In some examples, input device 113 may be configured to enable a userto control viewing options for experiencing media content and/orconsidering program guide data provided by processing subsystem 110. Aprogram guide button 444 may be configured to evoke a presentation of aprogram guide GUI on display 112. A left button 445, right button 446,up button 447, down button 448, and select button 449 may be includedand configured to enable the user to evoke and/or navigate throughvarious views, options, and graphical user interfaces displayed bydisplay 112. For example, buttons 445-448 may be configured to enable auser to navigate a selector object to different locations in a programguide. Input device 113 shown in FIG. 4 is merely illustrative of one ofthe many different types of user input devices that may be used to inconnection with processing subsystem.

Returning to FIG. 3, processing subsystem 110 may include an outputdriver 333 configured to interface with or drive display 112. Asinstructed by one or more processors of the processing subsystem 110,output driver 333 may provide output signals to display 112, the outputsignals including content (e.g., media content and/or program guidecontent) to be presented by display 112 for experiencing by a user. Forexample, output driver 333 may provide a program guide GUI including aprogram guide view to display 112 for presentation to the user. Outputdriver 333 may include any combination of hardware, software, and/orfirmware as may serve a particular application.

Storage device 334 may include one or more data storage media, devices,or configurations and may employ any type, form, and combination ofstorage media. For example, storage device 334 may include, but is notlimited to, a hard drive, network drive, flash drive, magnetic disc,optical disc, or other non-volatile storage unit. Media content, programguide data, images representative of media content instances, and otherdata may be temporarily and/or permanently stored in storage device 334.

Storage device 334 is shown to be a part of the processing subsystem 110in FIG. 3 for illustrative purposes only. It will be understood thatstorage device 334 may additionally or alternatively be located externalto processing subsystem 110.

Processing subsystem 110 may include memory 335. Memory 335 may include,but is not limited to, FLASH memory, random access memory (“RAM”),dynamic RAM (“DRAM”), other suitable computer-readable media, or anycombination or sub-combination thereof. In some examples, variousfacilities (e.g., a program guide facility 342) used by the processingsubsystem 110 may reside in memory 335.

Storage device 334 may include one or more live cache buffers 336. Livecache buffer 336 may additionally or alternatively reside in memory 335or in a storage device external to processing subsystem 110. In someexamples, media content and/or program guide data may be temporarilystored in live cache buffer 336 (i.e., buffered) to facilitate bufferedviewing of the media content and/or program guide data.

Tuner 337 may be configured to selectively receive content (e.g., mediacontent) carried on a particular content channel. For example, tuner 337may be tuned to a particular content channel such that the contentcarried on the content channel is received and may be processed byprocessing subsystem 110.

In some examples, processing subsystem 110 may include multiple tuners337 such that content carried on different content channels may beconcurrently received by the processing subsystem 110. For example,processing subsystem 110 may include a first tuner configured to receivecontent carried on an analog video signal and a second tuner configuredto simultaneously receive content carried on a digital compressedsignal.

In some examples, media content received at the tuner 337 is temporarilybuffered, or stored, in the live cache buffer 336. If there are multipletuners 337, there may be a live cache buffer 336 corresponding to eachof the tuners 337.

While tuner 337 may be used to receive various types of content-carryingsignals transmitted by media content provider 111, processing subsystem110 may be configured to receive other types of content signals(including media content signals and/or program guide data signals) frommedia content provider 111 and/or other sources without using a tuner.For example, media content provider 111 may broadcast digital streams ofdata packets (e.g., Internet Protocol (“IP”) based data packets) thatcan be received without using a tuner. For such types of contentsignals, communication interface 331 may receive and forward the signalsdirectly to other components of processing subsystem 110 (e.g.,processor 338 or signal processing unit 339) without the signals goingthrough tuner 337. For an IP-based signal, for example, signalprocessing unit 339 may function as an IP receiver.

Streams of content received by communication interface 331 may be usedto populate image objects in a program guide. Accordingly, and as willbe described in more detail further below, image objects may include“live” or “nearly live” content, including video content that is beingtransmitted by media content provider 111 and received by communicationinterface 331.

Processing subsystem 110 may include at least one processor, such asprocessor 338, configured to control operations of processing subsystem110. Processing subsystem 110 may also include a signal processing unit339 configured to process incoming media content. Signal processing unit339 may be configured, for example, to demodulate and parse encodeddigital media content. In some examples, processing subsystem 110 mayinclude one or more signal processing units 339 corresponding to each ofthe tuners 337. Content and/or data received from the media contentprovider 111 may be processed by signal processing unit 339, processor338, and/or any other suitable component(s) of processing subsystem 110.

Processing subsystem 110 may include a graphics engine 340 configured togenerate graphics that can be displayed by the display 112. The graphicsmay include graphical user interfaces such as, but not limited to, oneor more program guide GUIs including various views of program guide data(i.e., program guide views), program guide navigation tools (e.g., aselector object), image objects representing media content instances,and other graphics.

One or more facilities (e.g., software applications) residing withinprocessing subsystem 110 may be executed upon initiation by a user ofthe processing subsystem 110, or upon the occurrence of anotherpredetermined event. The facilities may reside in memory 335 or in anyother area of the processing subsystem 110 and may be executed byprocessor 338.

As shown in FIG. 3, processing subsystem 110 may include a program guidefacility 342, which may reside in memory 335 or any other suitablelocation within processing subsystem 110. Program guide facility 342 maybe configured to instruct one or more components of processing subsystem110 (e.g., processor 338 and/or graphics engine 340) to generate andprovide data representative of a program guide, at least one programguide image object, a selector object, and/or a program guide GUIincluding a view of at least a portion of the program guide and theimage object. Processing subsystem 110 may provide the program guide GUIto display 112 for presentation to a user. The program guide GUI mayinclude a view of at least a portion of a program guide, and thus may beused to present program guide views for experiencing by a user. Programguides, program guide GUIs, and/or program guide views may be generatedfrom program guide data stored in processing subsystem 110 (e.g., instorage device 334) and/or program guide data received from an externalsource such as media content provider 111.

Program guide facility 342 may be launched or executed by receipt of apredetermined user input signal. For example, when a user selectsprogram guide button 444 of user input device 113 shown in FIG. 4,program guide facility 342 may launch and instruct processor 338 and/orgraphics engine 340 to generate a program guide GUI including datarepresentative of a view of at least a portion of a program guide. Theprogram guide GUI may be provided to output driver 333, which canprovide a signal including data representative of the program guide GUIto display 112 for presentation to the user.

To facilitate an understanding of program guide facility 342, exemplaryprogram guides, program guide GUIs, and program guide views, FIGS. 5-10illustrate various respective examples of program guides, program guideGUIs, and program guide views that processing subsystem 110 may beconfigured to provide to display 112 for presentation to a user.

FIG. 5 illustrates an exemplary program guide 500 that may be generatedand provided by processing subsystem 110. As shown in FIG. 5, programguide 500 may include a matrix of cells 510-1 through 510-12(collectively “cells 510”). It will be recognized that while twelvecells 510 are shown in FIG. 5, program guide 500 may include any numberof cells as may serve a particular application. The cells 510 may beassociated with respective media content instances and related metadataand programming information. In certain embodiments, for example, anyparticular cell 510 may be associated with a media content instance. Forinstance, cell 510-1 may be associated with a television program titled“DALLAS.”

The cells 510 may be arranged in a program guide matrix based onattributes of the cells and/or the associated media content instances.For example, the cells 510 may be arranged in a matrix based on contentchannels carrying the corresponding media content instances and timeslots representing time periods during which the media content instancesare scheduled for transmission (e.g., broadcast). As shown in FIG. 5,content channels 520-1 through 520-4 (collectively “content channels520”) may be arranged along a channel axis 525, and time slots 530-1through 530-3 (collectively “time slots 530”) may be arranged along atime axis 535 to form a matrix grid of cells 510. In the example shownin FIG. 5, the channel axis 525 is disposed vertically and the time axis535 is disposed horizontally. This is illustrative only. Otherdispositions of axes may be used in other embodiments.

In program guide 500, any particular cell 510 may be associated with acontent channel and one or more time slots respectively indicative ofthe content channel carrying the corresponding media content instanceand the time period during which the media content instance is scheduledfor broadcast. As an example, the position of cell 510-1 in the programguide matrix represents that the corresponding media content instance(e.g., a television program titled “DALLAS”) is scheduled for broadcaston content channel 520-1 during time slot 530-1. Accordingly, the cells510 may be arranged in the matrix grid based on content channels 520 andtime slots 530, and each matrix grid space may be spatially positionedas an intersection area for a particular content channel 520 and timeslot 530.

Program guide 500 is illustrative only. Typically, a program guide mayinclude numerous cells 510 associated with numerous media contentinstances, content channels 520, and time slots 530. To illustrate, aprogram guide may include program guide data representing scheduledprogramming for hundreds of content channels and for any suitable periodof time, including one day, two weeks, or a month of programming, forexample.

Accordingly, a user may view different portions of a program guide, andonly a portion of a program guide is typically included in any one viewpresented to a user. FIG. 5 illustrates a viewing area 540 representinga particular view of program guide 500 (i.e., a “program guide view”)that may be presented to a user. As shown, cells 510-2, 510-3, 510-5,510-6, 510-8, and 510-9 are included in viewing area 540, and cells510-1, 510-4, 510-7, 510-10, 510-11, and 510-12 are outside of theviewing area 540. The particular cells 510 included in the viewing area540 in FIG. 5 are respectively associated with content channels 520-1,520-2, and 520-3, and with time slots 530-2 and 530-3.

The portion of program guide 500 that is included in viewing area 540may be determined based on a position of a program guide selector object545 (or simply “selector 545”). FIG. 5 shows selector 545 positioned atcell 510-5. Media content processing subsystem 110 may be configured tomove selector 545 to different cells 510 in the program guide 500 basedon user input and to modify the program guide view presented in theviewing area 540 in response to the selector 545 changing positions inthe program guide 500.

A cell, such as cell 510-5, selected by selector 545 may be referred toas an “active cell” or a “selected cell,” and the other cells (e.g.,cells 510-1, 510-2, 510-3, 510-4, 510-6, 510-7, 510-8, 510-9, 510-10,510-11, and 510-12) not selected by selector 545 may be referred to as“inactive cells” or “unselected cells.” Accordingly, the matrix of cells510 in program guide 500 may include a selected cell and one or moreunselected cells, with the selected cell being determined by theposition of selector 545. The selected cell is typically within theviewing area 540. Accordingly, the cells 510-2, 510-3, 510-5, 510-6,510-8, and 510-9 within the viewing area 540 may include a selected cell510-5 and one or more unselected cells 510-2, 510-3, 510-6, 510-8, and510-9.

As shown in FIG. 5, program guide 500 may include one or more imageobjects 550-1 through 550-12 (collectively “image objects 550”)associated with one or more of the cells 510 in the program guide 500.In the example shown in FIG. 5, cells 510-1 through 510-12 include imageobjects 550-1 through 550-12, respectively.

As illustrated in FIG. 5, image objects 550 are not restricted only to a“selected cell”; one or more “unselected cells” may include imageobjects 550. In the example shown, each of the unselected cells 510-1,510-2, 510-3, 510-4, 510-6, 510-7, 510-8, 510-9, 510-10, 510-11, and510-12 includes a respective image object 550, and selected cell 510-5also includes an image object 550-5.

Image objects 550 may include any visual images, graphics, and/or otherimage content (collectively referred to as “image content”) representingmedia content instances associated with the cells 510. For example,image objects 550 may include still image content representing mediacontent instances, including images of scenes, frames, posters, orpromotions of the media content instances. As another example, imageobjects 550 may include video image content representing media contentimages, including a video component of at least a portion of a mediacontent instance. For instance, a particular image object 550 mayinclude presentation of all or part of a video component of anassociated media content instance, or presentation of a trailer or othervideo promotion for the media content instance. Image objects 550including image content may be referred to as “image thumbnails,” andimage objects 550 including video image content may be referred to as“video thumbnails.”

Image content may be obtained from any suitable local or external sourcefor inclusion in image objects 550. For example, image content may belocally stored in and retrieved from storage device 334 and/or livecache buffer 336. As another example, image content may be received frommedia content provider 111 or any other suitable external source. Forinstance, image content may be included in media content data streamsand/or program guide data received from media content provider 111.

As mentioned, image content may include still image content and/or videoimage content. Video image content may include time-shifted content suchas video-on-demand content and/or previously recorded and locally storedvideo streams (e.g., DVR content). Additionally or alternately, videoimage content may include “live” or “nearly live” video streams beingreceived from media content provider 111. Accordingly, an image object550 may include a time-shifted video component of a media contentinstance, or an image object 550 may include a “live” or “nearly live”presentation of a video component of a media content instance beingtransmitted by media content provider 111. Hence, a user viewing aprogram guide view may be presented with video playback of “live,”“nearly live,” and/or prerecorded video components of one or more of themedia content instances associated with one or more cells 510 includedin a program guide view. The term “live,” as used hereinafter and in theappended claims may refer to “live” and/or “nearly live” content. Theterm “time-shifted content” may refer to any content other than “live”content, including, but not limited to, on-demand content, prerecordedcontent, time-shifted video content (e.g., a time-shifted video stream),and buffered content.

A media content stream being received from the media content provider111 may be buffered. The buffered stream may be stored in live cachebuffer 336 as described above. When a media content stream is buffered,processing subsystem 110 may selectively include either buffered or liveplayback of a video component of the media content stream in an imageobject 550. The media content processing subsystem 110 may be configuredto make this selection, or to allow a user to make the selection.

This may potentially provide a user with options for viewing the mediacontent instance associated with the media stream. For example, when auser makes a selection in the program guide 500, such as selecting towatch a media content instance associated with a buffered media contentstream in a full-screen view, the processing subsystem 110 may beconfigured to respond by providing a full-screen view of the mediacontent. The full-screen view may include live playback of the mediacontent stream, or the buffered media content stream may be used toinitiate buffered playback of the media content at an earlier point inthe media content stream, such as at approximately the beginning of thestream. As an example, a user may select a particular image object 550,and the buffered media content stream associated with the image object550 may be used to present the media content to the user starting at thebeginning of the media content stream.

In certain embodiments, when the user selects to launch a full-screenview of a media content instance that is being buffered (such as byselecting an image object 550 associated with the media contentinstance), processing subsystem 110 may provide selectable optionsenabling the user to select between viewing the live media contentstream and using the buffered media content stream to initiate bufferedplayback at an earlier point in the media content stream, such as at thebeginning. The selectable options may be presented in a pop-up graphicaluser interface or in any other suitable manner.

Image objects 550 may be used to order media content that is availablefor on-demand ordering. Image objects 550 associated with such mediacontent instances may be selected to initiate a process for orderingon-demand media content, including media content that has beenpreviously broadcast.

The configuration shown in FIG. 5 is illustrative only. Otherembodiments may include other configurations of image objects 550 and/orcells 510. In certain embodiments, for example, only a subset of cells510 includes image objects 550. This may be due at least in part tounavailability of image content for certain media content instancesand/or to a lack or a conservation of resources. To illustrate, certainimplementations of processing subsystem 110 may limit or regulate thenumber of media content streams that may be concurrently processed. Forexample, processing subsystem 110 may be configured to concurrentlyreceive only a certain number of media content streams from mediacontent provider 111. This may in turn limit the number media contentinstances that can be concurrently played back live within image objects550. As an example, the number of live media content instances beingconcurrently presented in image objects 550 may be limited by the numberof media content receivers (e.g., tuners 337 or IP receivers) inprocessing subsystem 110 and/or by the number of content channels (e.g.,frequencies or IP channels) concurrently supported by the processingsubsystem 110. Accordingly, in certain embodiments, only a certainnumber of image objects 550 may concurrently include live video imagecontent.

FIG. 6 illustrates another exemplary configuration of image objects550-13 through 550-15 in program guide 500. As shown in FIG. 6, in someembodiments, only a subset of cells 510 in program guide 550 or viewingarea 540 includes image objects 550-13, 550-14, and 550-15. This may befor any of the reasons described above, including, but not limited to,unavailability of image content for certain media content instancesand/or a lack or a conservation of resources.

Accordingly, one or more image objects 550 may be selectively placed inprogram guide 500 in accordance with a predefined placement heuristic.Program guide facility 342 may be configured to utilize the placementheuristic to selectively integrate image objects 550 into program guide500, such as by stitching or otherwise associating image objects 550with cells 510 in the program guide 500.

The placement heuristic may be defined to direct any suitable placementof image objects 500 as may serve a particular implementation. Incertain embodiments, placement of image objects 500 may be based on oneor more attributes of cells 510, selector 545, image content, mediacontent instances, user profiles, and/or viewing area 540. Examples ofsuch attributes may include, but are not limited to, cell 510 positions,selector 545 position, inclusion of cells 510 in or exclusion of cells510 from viewing area 540, media content broadcast statuses (e.g.,previously broadcast, currently being broadcast, and scheduled forfuture broadcast), image content types (e.g., still image, video imagecontent, pre-recorded video content, or live video content), mediacontent types (e.g., scheduled broadcast and available on-demand mediacontent), user-defined preferences, and cell 510 positions relative toother cells 510, selector 545, content channels 520, time slots 530,and/or viewing area 540.

In certain embodiments, the placement heuristic may prioritize imagecontent by type, such as by prioritizing video image content over stillimage content when resources are available for inclusion of video imagecontent in image objects 550. As an example, for a particular imageobject 550-15 or cell 510-8, program guide facility 342 may determinewhether video image content representative of the associated mediacontent instance is available. If the video image content andappropriate resources are available, the program guide facility 342 mayintegrate the image object 550-15 including the video image content intothe program guide 500 (e.g., within cell 510-8). If video image contentfor the media content instance or a resource is unavailable, programguide facility 342 may then determine whether still image contentrepresentative of the media content instance is available. If the stillimage content is available, the program guide facility 342 may integratethe image object 550-15 including the still image content into theprogram guide 500 (e.g., within cell 510-8). If no image content isavailable, the program guide facility 342 may omit the image object550-15 from the program guide 500. Alternative or in addition to imageobject 550-15, cell 510-8 may include textual program guide informationsuch as a title and/or a description of the media content instance.

In certain embodiments, the placement heuristic may prioritize placementof image content based on the viewing area 540. For example, imageobjects 550 may be included in cells within the viewing area 540 andomitted from other cells outside of the viewing area 540. This may helpconserve resources by including image objects 550 only when the imageobjects 550 would be within the program guide area that is viewable by auser. As the program guide view is updated (e.g., due to movement ofselector 545), the image objects 550 may also be updated. As anotherexample, cells within the viewing area 540 may be considered beforecells outside of the viewing area 540 for placement of image objects550. The configuration shown in FIG. 6 may represent an exemplaryplacement of image objects 550-13, 550-14, and 550-15 based on theviewing area 540 and in which image objects 550-13, 550-14, and 550-15are respectively associated with cells 510-2, 510-6, and 510-8 includedwithin the viewing area 540, and no image objects 550 are includedwithin other cells 510-1, 510-, 510-3, 510-4, 510-5, 510-7, 510-9,510-10, 510-11, and 510-12 located outside of the viewing area 540.

In certain embodiments, the placement heuristic may prioritize placementof image content based on proximity to the selector 545. In programguide 500, for example, cells more proximate to the selector 545 may beprioritized over other cells for inclusion of image objects 550, or forinclusion of image objects 550 including video image content.Accordingly, cells more proximate than other cells to selector 545 maybe given prioritized consideration for placement of image objects 550and/or video image content. Such a placement heuristic may help placeimage objects 550 near an area of user focus, which is typically at ornear to the selector 545.

As an example, in FIG. 6, cell 510-8 may be prioritized over cell510-11, based on proximity to selector 545 in program guide 500, forplacement of an image object 550 and/or for inclusion of video imagecontent. The configuration shown in FIG. 6 may represent an exemplaryplacement of image objects 550-13, 550-14, and 550-15 based on proximityof the cells 510 to the selector 545.

In certain embodiments, the placement heuristic may prioritize placementof image content based on a content channel 520. In program guide 500,for example, cells 510-4, 510-5, and 510-6 associated with a particularcontent channel 520-2 in which selector 545 is positioned may beprioritized over other cells 510-1, 510-2, 510-3, 510-7, 510-8, 510-9,510-10, 510-11, and 510-12 that are associated with other contentchannels 520-1, 520-3, or 520-4. FIG. 7 illustrates another exemplaryconfiguration of image objects 550-13, 550-14, and 550-15 within programguide 500. As shown in FIG. 7, image objects 550-13, 550-14, and 550-15may be positioned in a row of cells 510-4, 510-5, and 510-6 associatedcontent channel 520-2. The configuration shown in FIG. 7 may begenerated based on a placement heuristic that is configured toprioritize placement of image content based on a content channel 520.

In certain embodiments, the placement heuristic may prioritize placementof image content based on a time slot 530. In program guide 500, forexample, cells 510-2, 510-5, 510-8, and 510-11 associated with aparticular time slot 530-2 in which selector 545 is positioned may beprioritized over other cells 510-1, 510-3, 510-4, 510-6, 510-7, 510-9,510-10, and 510-12 that are associated with other time slots 530-1 and530-3. FIG. 8 illustrates another exemplary configuration of imageobjects 550-13, 550-14, 550-15, and 550-16 within program guide 500. Asshown in FIG. 8, image objects 550-13, 550-14, 550-15, and 550-16 may bepositioned in a column of cells 510-2, 510-5, 510-8, and 510-11associated time slot 530-2. The configuration shown in FIG. 8 may begenerated based on a placement heuristic that is configured toprioritize placement of image content based on a time slot 530.

In certain embodiments, the placement heuristic may place image contentbased on attributes of media content instances, including broadcaststatuses of media content instances, for example. Broadcast statuses mayinclude, but are not limited to, “previously broadcast” for mediacontent instances that have already been broadcast, “currentlybroadcast” for media content instances that are currently beingbroadcast, and “scheduled future broadcast” for media content instancesthat are scheduled for broadcast in the future. The term “broadcast” isused broadly and may refer to various types of transmissions of mediacontent.

In certain embodiments, the placement heuristic may direct that imageobjects 550 associated with “currently broadcast” media contentinstances may include video image content (e.g., live video imagecontent) when such content and appropriate resources are available, andthat other image objects 550 associated with “previously broadcast” and“scheduled future broadcast” media content instances include still imagecontent when available.

As an example, in program guide 500, cells 510-2, 510-5, 510-8, and510-11 within time slot 530-2 may be associated with media contentinstances that are being broadcast, cells 510-1, 510-4, 510-7, and510-10 within time slot 530-1 may be associated with previouslybroadcast media content instances, and cells 510-3, 510-6, 510-9, and510-12 within time slot 530-3 may be associated with media contentinstances scheduled for future broadcast. Accordingly, with reference tothe configuration of image objects 550 shown in FIG. 5, image objects550-2, 550-5, 550-8, and 550-11 respectively associated with cells510-2, 510-5, 510-8, and 510-11 may include video image content, andimage objects 550-1, 550-3, 550-4, 550-6, 550-7, 550-9, 550-10, and550-12 respectively associated with cells 510-1, 510-3, 510-4, 510-6,510-7, 510-9, 510-10, and 510-12 may include still image content,insofar as resources allow.

In certain embodiments, the placement heuristic may be configured toprioritize placement of image content based on one or more userpreferences, which may be defined by a user of processing subsystem 110.Processing subsystem 110 may provide one or more tools enabling the userto define preferences for the placement of image content. As an example,a user may specify one or more particular media content instances to begiven priority for placement of image content (e.g., video imagecontent). Accordingly, the placement heuristic may be configured toprioritize one or more cells 510 associated with the media contentinstance(s) for placement of image content. This may allow a user tocontrol allocation of resources such that image objects 550 and/or videoimage content are prioritized for preferred media content (e.g., afavorite television program).

The above example is illustrative only. A user may be allowed to provideother definitions for placement of image content. As another example, auser may specify a particular content channel 520 to be given priorityfor placement of image content. Accordingly, the placement heuristic maybe configured to prioritize one or more cells 510 associated with thecontent channel 520 for placement of image content. This may allow auser to control allocation of resources such that image objects 550and/or video image content are prioritized for a favorite contentchannel (e.g., ESPN). Other embodiments may include other user-definedplacement priorities.

One or more of the above-described priorities for placing image contentmay be combined. Accordingly, the placement heuristic may include anycombination or sub-combination of the above-described placementparameters. For example, a user-defined placement preference and aplacement priority based on viewing area 540 may be combined such thatboth are considered and used to determine placement of image content inprogram guide 500.

Priority placement of image content may effectively allocate resourcesfor image objects 550, and may be especially useful when resources arelimited or regulated. For example, a particular implementation ofprocessing subsystem 110 may support concurrent reception of a certainnumber media content streams from media content provider 111.Accordingly, only this number of image objects 550 may include livevideo image content from the media content streams. The placementheuristic may direct priority placement of the live video image objects550. Other image objects 550 including other image content (e.g.,prerecorded video and/or still image content) may next be placed inprogram guide 500 as resources allow.

FIG. 9 illustrates an exemplary program guide graphical user interface(“GUI”) 960, which may include a view of at least a portion of a programguide 500 and image objects 550-13, 550-14, and 550-15 included therein,as may be presented in a viewing area 540. Processing subsystem 110 mayprovide a signal carrying data representative of program guide GUI 960to display 112 and for use by display 112 in presenting program guideGUI 960 for consideration by a user.

As shown in FIG. 9, program guide GUI 960 may include a list 964 ofcontent channels 520, a list 968 of programming time slots 530, and amatrix of cells associated with media content instances and positionedrelative to the content channels 520 and time slots 530.

Program guide GUI 960 may also include selector 545 configured tographically depict which cell of the program guide matrix is currentlyhighlighted. In FIG. 9, a cell associated with a media content instancetitled “Most Extreme: Killer Cats” is highlighted by selector 545. Whena cell is highlighted by selector 545, additional information associatedwith the cell may be displayed. For example, a synopsis of the “MostExtreme: Killer Cats” media content instance is displayed. Theadditional information may be obtained from metadata associated with themedia content instance.

Selector 545 may be moved from cell to cell in accordance with userinput commands. For example, the user may utilize buttons 445-449 of theuser input device 113 shown in FIG. 4 to move the selector 545 up, down,left, or right, or to select a highlighted cell. When a highlighted cellis selected, the media content instance corresponding with the cell maybe presented to the user in full-screen or other appropriate view. Theview shown in program guide GUI 960 may be updated accordingly asselector 545 is moved about.

As shown in FIG. 9, program guide GUI 960 may include image objects550-13, 550-14, and 550-15, which are respectively positioned in three“unselected cells” in the program guide GUI 960. The configuration ofimage objects 550-13, 550-14, and 550-15 shown in FIG. 9 is illustrativeonly and may be determined and generated in accordance with a placementheuristic, as described above.

Program guide GUI 960 may be part of a graphical layer that can be movedabout in relation to viewing area 540 such that various portions of thelayer are displayed within the viewing area 540. For example, thegraphical layer may be moved toward the viewing area 540 to create a“zoom in” effect or away from the viewing area 540 to create a “zoomout” effect. This may be performed in any of the ways described in U.S.patent application Ser. No. 11/764,998, filed Jun. 19, 2007, and titled“Program Guide 3D Zoom,” the disclosure of which is hereby incorporatedby reference in its entirety.

Accordingly, the program guide GUI 960 110 may be moved such that theimage content in any particular image object 555 is zoomed into andpresented in a full-screen view. For example, a user may utilize userinput device 113 to select image object 550-13, or the cell associatedwith image object 550-13. The processing subsystem 110 may, in responseto the user input, move the graphical zoom layer with respect to theviewing area 540 such that the image content in image object 550-2 iszoomed into and presented in a full-screen view.

In certain embodiments, an image object 550 may fill substantially allof the area of a cell and/or be the sole content of the cell. FIG. 10illustrates another example of program guide GUI 960 in which imageobject 550-13 substantially fills the cell in which it is positioned. Inthe illustrated example, the size of the image object 550 has beenadjusted (as compared to FIG. 9) to substantially fill the cell. Inother embodiments, the size of the cell may be adjusted such that imageobject 550-13 substantially fills the cell. A reduction is cell size mayallow cells to be repositioned and an increased number of cells to beconcurrently displayed in view area 540.

While FIGS. 9-10 illustrate exemplary views of a program guide GUI 960,the examples are illustrative only. Image objects 550 may additionallyor alternatively be included in other program guide GUIs generated bymedia content processing subsystem 110 in accordance with the principlesdescribed herein. For example, one or more image objects 550 may beincluded in a vertical calendar program guide GUI such as is describedin U.S. patent application Ser. No. 11/959,939, filed the same day asthe present application, and titled “Vertically Oriented Program Guidefor Media Content Access Systems and Methods,” the content of which ishereby incorporated by reference in its entirety.

FIG. 11 illustrates an exemplary method of providing a program guidehaving image objects included therein. While FIG. 11 illustratesexemplary steps according to one embodiment, other embodiments may omit,add to, reorder, and/or modify any of the steps shown in FIG. 11.

In step 1110, a program guide is provided. The program guide includes amatrix of cells associated with a plurality of media content instances.Step 1110 may be performed in any of the ways described above, includingmedia content processing subsystem 110 generating and providing theprogram guide based on program guide data.

In step 1120, a selector (e.g., selector object 545) for selecting oneof the cells in the program guide is provided. Step 1120 may beperformed in any of the ways described above, including media contentprocessing subsystem 110 providing selector 545 in program guide GUI960.

In step 1130, at least one image object is provided in at least one ofthe unselected cells in program guide (i.e., one or more cells notselected by selector 545). Step 1130 may be performed in any of the waysdescribed above, including selectively placing image objects and/orimage content in one or more of the unselected cells in accordance witha predefined placement heuristic.

In step 1140, a graphical user interface is provided to a display forpresentation to a user. The graphical user interface includes at least aportion of the program guide and at least one of the image objectsprovided in step 1130. Step 1140 may be performed in any of the waysdescribed above, including media content processing subsystem 110providing data representative of the graphical user interface to display112.

As mentioned, step 1130 may include selectively placing image content inaccordance with a placement heuristic. Cells in a program guide may beconsidered in a particular order for placement of image content based onthe placement heuristic. As an example, cells within a viewing area 540may be considered before cells outside of the viewing area 540. Incertain embodiments, cells may be considered one at a time in an orderdetermined by the placement heuristic.

FIG. 12 illustrates an exemplary method of selectively placing imagecontent at a cell level. While FIG. 12 illustrates exemplary stepsaccording to one embodiment, other embodiments may omit, add to,reorder, and/or modify any of the steps shown in FIG. 12.

The illustrated method begins by considering a particular program guidecell for placement of image content. In step 1210, it is determinedwhether video image resources are available. Video image resources mayinclude any hardware, software, and/or memory resources configured toenable placement of video image content in the cell. Step 1210 mayinclude checking availability of video resources for live video and/orfor prerecorded video.

If appropriate video image resources are not available, processing movesto step 1220. In step 1220, it is determined whether still imageresources are available. Still image resources may include any hardware,software, and/or memory resources configured to enable placement ofstill image content in the cell. If appropriate still image resourcesare not available, the method ends.

Returning to step 1210, if it is determined that video image resourcesare available, processing moves to step 1230. In step 1230, it isdetermined whether there is video image content available for the cell.This may include determining whether video image content representingthe media content instance corresponding to the cell is available.

If video image content is available for the cell, the video imagecontent is placed in step 1240. This may include placing the video imagecontent in an image object 550 and inserting the image object 550 in thecell of the program guide.

In step 1250, processing may move to another cell. The method of FIG. 12may then be repeated for the next cell.

Returning to step 1230, if it is determined that video image content isnot available for the cell, processing moves to step 1220. If it isdetermined in step 1220 that still image resources are available,processing moves to step 1260.

In step 1260, it is determined whether there is still image contentavailable for the cell. This may include determining whether still imagecontent representing the media content instance corresponding to thecell is available.

If still image content is available for the cell, the still imagecontent is placed in step 1240. This may include placing the still imagecontent in an image object 550 and inserting the image object 550 in thecell of the program guide.

Processing may then move to another cell in step 1250, and the method ofFIG. 12 may be repeated for the next cell.

While the above examples are directed to image objects in program guideGUIs, image objects 550 may additionally or alternatively be included inother GUIs generated by media content processing subsystem 110 inaccordance with the principles described herein. For example, one ormore image objects 550 may be included in an interactive menu GUI (e.g.,a media content search GUI and a menu control GUI) such as any of theGUIs described in U.S. patent application Ser. No. 11/956,605, filedDec. 14, 2007, and titled “Content Level Navigation Systems andMethods,” the content of which is hereby incorporated by reference inits entirety.

The preceding description has been presented only to illustrate anddescribe exemplary embodiments with reference to the accompanyingdrawings. It will, however, be evident that various modifications andchanges may be made thereto, and additional embodiments may beimplemented, without departing from the scope of the invention as setforth in the claims that follow. The above description and accompanyingdrawings are accordingly to be regarded in an illustrative rather than arestrictive sense.

1. A system comprising: a media content processing subsystem configuredto provide a program guide including a matrix of cells associated with aplurality of media content instances, said matrix of cells beingarranged along a time axis and a channel axis, a selector object withinsaid program guide, said selector object being configured to select oneof said cells such that said cells in said matrix include a selectedcell and a plurality of unselected cells, a first image selectivelyplaced within a first unselected cell included in said plurality ofunselected cells, said first image representing a first media contentinstance included in said plurality of media content instances andassociated with a first time period and a channel corresponding to afirst location of said first unselected cell along said time axis andsaid channel axis, a second image selectively placed within a secondunselected cell included in said plurality of unselected cells, saidsecond image representing a second media content instance included insaid plurality of media content instances and associated with a secondtime period and a channel corresponding to a second location of saidsecond unselected cell along said time axis and said channel axis, saidsecond time period not overlapping said first time period; wherein saidmedia content processing subsystem is further configured to generate atleast one buffered content stream of a first media content stream and asecond media content stream received from a media content providercommunicatively coupled to said media content processing subsystem, saidfirst media content stream representing said first media contentinstance and said second media content stream representing said secondmedia content instance, and provide a graphical user interface to adisplay for presentation to a user, said graphical user interfaceincluding at least a portion of said program guide, said first mediacontent stream displaying said media content instance as said firstimage, and said second media content stream displaying said mediacontent instance as said second image.
 2. The system of claim 1, whereinsaid first image comprises video image content representing said firstmedia content instance.
 3. The system of claim 2, wherein said videoimage content comprises playback of a video component of said firstmedia content instance.
 4. The system of claim 3, wherein said playbackcomprises live presentation of said video component of said first mediacontent instance.
 5. The system of claim 1, wherein said media contentprocessing subsystem is further configured to detect a user selection ofsaid first image, and initiate, in response to said user selection,playback of said first media content stream from approximately abeginning of said first media content stream using said at least onebuffered content stream.
 6. The system of claim 1, wherein said mediacontent processing subsystem is further configured to detect a userselection of said first image, and provide, in response to said userselection, selectable options enabling said user to select from livefull-screen playback of said first media content stream and bufferedfull-screen playback of said first media content stream using said atleast one buffered content stream.
 7. The system of claim 1, whereinsaid first image comprises a particular type of image, said type ofimage selected based on whether said first media content instance is apreviously broadcast media content instance, a currently broadcast mediacontent instance, and a scheduled future broadcast media contentinstance.
 8. The system of claim 7, wherein said type of image includesvideo image content when said first media content instance is acurrently broadcast media content instance and still image content whensaid first media content instance is a previously broadcast mediacontent image or a scheduled future broadcast media content instance. 9.The system of claim 1, wherein said program guide is implemented in agraphical zoom layer, said graphical zoom layer enabling a zoom intosaid image to generate a full-screen view of said image on said display.10. The system of claim 1, wherein said media content processingsubsystem comprises a set-top box.
 11. The system of claim 1, whereinsaid first image comprises a scene within said first media contentinstance.
 12. The system of claim 1, wherein said first image isselectively placed within said first unselected cell based on proximityof a position of said first unselected cell relative to a position ofsaid selector object in said program guide.
 13. The system of claim 1,wherein said first image is selectively placed within said firstunselected cell based on said first unselected cell being associatedwith a time slot in which said selector object is positioned in saidprogram guide.
 14. The system of claim 1, wherein said first image isselectively placed within said first unselected cell based on said firstunselected cell being associated with a content channel in which saidselector object is positioned in said program guide.
 15. The system ofclaim 1, wherein: said first unselected cell is prioritized over aremainder of other unselected cells included in said plurality ofunselected cells for selective placement of said first image in saidfirst unselected cell based on a position of said first unselected cellrelative to a position of said selector object in said program guide.16. The system of claim 1, wherein said non-overlapping second timeperiod occurs after an end of said first time period.
 17. An apparatuscomprising: at least one processor; a program guide facility configuredto direct said at least one processor to generate a program guideincluding a matrix of cells associated with a plurality of media contentinstances, said matrix of cells being arranged along a time axis and achannel axis, provide a selector object within said program guide, saidselector object being configured to select one of said cells such thatsaid cells in said matrix include a selected cell and a plurality ofunselected cells, selectively place a first image within a firstunselected cell included in said plurality of unselected cells, saidfirst image representing a first media content instance included in saidplurality of media content instances and associated with a first timeperiod and a channel corresponding to a first location of said firstunselected cell along said time axis and said channel axis, selectivelyplace a second image within a second unselected cell included in saidplurality of unselected cells, said second image representing a secondmedia content instance included in said plurality of media contentinstances and associated with a second time period and a channelcorresponding to a second location of said second unselected cell alongsaid time axis and said channel axis, said second time period notoverlapping said first time period, and generate at least one bufferedcontent stream of a first media content stream and a second mediacontent stream received from a media content provider, said first mediacontent stream representing said first media content instance and saidsecond media content stream representing said second media contentinstance; and an output driver configured to provide a program guidegraphical user interface to a display for presentation to a user, saidprogram guide graphical user interface including at least a portion ofsaid program guide, said first media content stream displaying saidmedia content instance as said first image, and said second mediacontent stream displaying said media content instance as said secondimage.
 18. The apparatus of claim 17, wherein said first image comprisesa of video content stream.
 19. The apparatus of claim 18, wherein saidvideo content stream includes a time-shifted video image stream.
 20. Theapparatus of claim 18, wherein said video content stream includes a livevideo image stream.
 21. The apparatus of claim 20, further comprising acommunication interface configured to receive said live video imagestream from said media content provider.
 22. The apparatus of claim 17,wherein said program guide is implemented in a graphical zoom layer,said graphical zoom layer enabling a zoom into at least one of saidfirst image and said second image to generate a full-screen view of saidat least one of said first image and said second image on said display.23. A method comprising: in response to a user instruction to display ormodify display of program information providing, by a media contentprocessing subsystem, a program guide including a matrix of cellsassociated with a plurality of media content instances, said matrix ofcells being arranged along a time axis and a channel axis; providing, bysaid media content processing subsystem, a selector object within saidprogram guide, said selector object being configured to select one ofsaid cells in said matrix such that said cells in said matrix include aselected cell and a plurality of unselected cells; selectively placing,by said media content processing subsystem, a plurality of images withina subset of said unselected cells, said plurality of images including aplurality of video image streams representing at least a subset of saidmedia content instances, wherein a first image within said plurality ofimages within said subset of said unselected cells is associated with afirst time period and a channel corresponding to a location of a firstunselected cell in said subset of said unselected cells along said timeaxis and said channel axis and a second image within said plurality ofimages within said subset of said unselected cells is associated with asecond time period and a channel corresponding to a location of a secondunselected cell in said subset of said unselected cells along said timeaxis and said channel axis, said second time period not overlapping saidfirst time period; generating a plurality of buffered content streams ofsaid plurality of video image streams; and providing, by said mediacontent processing subsystem, a graphical user interface to a displayfor presentation to a user, said graphical user interface displaying atleast a portion of said program guide and said plurality video imagestreams within said first image and said second image.
 24. The method ofclaim 23, wherein said plurality of video image streams comprises aplurality of live video image streams.
 25. The method of claim 24,further comprising receiving, by said media content processingsubsystem, said live video image streams from a media content provider,said live video image streams being components of said media contentinstances.
 26. The system of claim 23, further comprising: receiving, bysaid media content processing subsystem, a user selection of a chosencell of said matrix of cells; and if said chosen cell is one of saidunselected cells within said subset of said unselected cells associatedwith at least one of said first time period and said second time period,displaying, by said media content processing subsystem, according to auser instruction, one of a live version of said video image stream ofsaid plurality of video image streams corresponding to the said mediacontent instance associated with said chosen cell and a buffered contentstream of said plurality of buffered content streams corresponding tosaid media content instance associated with said chosen cell.